## 103个，语音播报没有看, 因为python安装的不好，不支持import
# 以下这个案例是没有 语音播报功能的
# 制作计算器，实现基本的运算

# import win32com.client
# speaker = win32com.client.Dispatch('SAPI.SpVoice')
# speaker.Speak('我的名字是sz')

class Caculator:
    def __check_num(func):
        def inner(self,n):
            if not isinstance(n,int):
                raise TypeError('应该输入一个整形数据')
            return func(self, n)
        return inner
    
    @__check_num
    def __init__(self, num):
        self.__result = num

    @__check_num
    def jia(self,n):
        self.__result += n
        return self

    @__check_num
    def jian(self,n):
        self.__result -= n
        return self

    @__check_num
    def cheng(self,n):
        self.__result *= n
        return self

    def show(self):
        print(self.__result)
        # return self.__result

c = Caculator(2)
c.jia(6).jian(4).cheng(5).show()

